import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authc.UsernamePasswordToken;
import org.apache.shiro.mgt.DefaultSecurityManager;

import org.apache.shiro.realm.text.IniRealm;
import org.apache.shiro.subject.Subject;

public class ShiroDemo {
    public static void main(String[] args) {
//        创建核心管理器
        DefaultSecurityManager manager = new DefaultSecurityManager();
//创建realm(用户，角色，权限对象)
        IniRealm realm = new IniRealm("classpath:shiro.ini");
//      赋值
        manager.setRealm(realm);
//        设置核心管理器
        SecurityUtils.setSecurityManager(manager);
//        获取核心对象
        Subject subject = SecurityUtils.getSubject();
//        创建token（用户输入账号密码）
        UsernamePasswordToken token = new UsernamePasswordToken("zhangsan", "123456");
//        登录
        subject.login(token);
        if (subject.isAuthenticated()) {
            System.out.println("登录成功");
        } else {
            System.out.println("登录失败");
        }
//        是否是admin
        System.out.println("是否是admin" + subject.hasRole("admin"));
//        是否有删除权限
        System.out.println(subject.isPermitted("sys:user:del"));
    }

}
